package com.agritech.smartfarming.observer;

import com.agritech.smartfarming.model.EnvironmentData;

/**
 * 环境主题接口，实现观察者模式
 */
public interface EnvironmentSubject {
    /**
     * 注册观察者
     * @param observer 观察者对象
     */
    void registerObserver(EnvironmentObserver observer);
    
    /**
     * 移除观察者
     * @param observer 观察者对象
     */
    void removeObserver(EnvironmentObserver observer);
    
    /**
     * 通知所有观察者
     */
    void notifyObservers();
    
    /**
     * 更新环境数据
     * @param environmentData 新的环境数据
     */
    void updateEnvironmentData(EnvironmentData environmentData);
} 